<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 静态成员 ： 1.静态属性  2.静态方法
        // 静态 ： 和 类有关 和实例化对象无关 。静态成员不需要实例化直接调用；
        // class Person{
        //     static num = 10; // 静态属性
        //     constructor(){
        //         this.height = "178cm";
        //         this.age = 20;
        //     }
        //     static myfn(){  // 静态方法
        //         console.log("myfn");
        //     }
        // }

        // console.log( Person.num);
        // Person.myfn();


        //二。Promise的静态方法 Resolve()和Reject();
        //1.Promise.resolve(); 创建一个 fulfilled状态的promise对象,创建一个成功的promise对象的简写方式。
            //方式一：
            let p = new Promise((resolve,rejected)=>{
                resolve("success")
            })
            console.log(p,'new方式');

            //方式二；
            let p1 =Promise.resolve("success");
            console.log(p1,'resolve()方式');

            // Promise.resolve()的实现
            class MyPromise{
                static resolve(val){
                    return new Promise((res,rej)=>{//方法内部帮我们实例化了
                        res(val)
                    })
                }
            }
        let p2 = MyPromise.resolve("success");
                    console.log(p);

        //2.Promise.reject(),创建一个rejected状态的promise对象，创建一个失败的promise对象的简写方式
           
            let p3= Promise.reject('fail');
            console.log(p3,'reject()方式');

            let p4 = new Promise((resolve,rejected)=>{
                rejected("fail")
            })
            console.log(p4,'new方式');


              // Promise.reject()的实现
              class MyPromise1{
                static reject(val){
                    return new Promise((res,rej)=>{//方法内部帮我们实例化了
                        rej(val)
                    })
                }
            }
            let p5 = MyPromise1.reject("fail");
                    console.log(p5);
    </script>
</body>
</html>